Proving termination of CHR in Prolog: A transformational approach
نویسندگان
چکیده
In this paper we present a termination preserving transformation from Constraint Handling Rules to Prolog. The transformation is sound w.r.t. termination under the theoretical semantics of Constraint Handling Rules. It does not consider the presence of a propagation history. The transformation allows for the direct reuse of termination proof methods from Logic Programs and Term-Rewrite Systems, yielding the first fully automatic termination proving for Constraint Handling Rules. We formalize the transformation and show usefulness of the approach. We transform a set of CHR programs, by an implementation of the transformation and show termination by using existing termination tools for Logic Programs and Term-Rewrite Systems.
منابع مشابه
A Transformational Approach for Proving Properties of the CHR Constraint Store
Proving termination of, or generating efficient control for Constraint Handling Rules (CHR) programs requires information about the kinds of constraints that can show up in the CHR constraint store. In contrast to Logic Programming (LP), there are not many tools available for deriving such information for CHR. Hence, instead of building analyses for CHR from scratch, we define a transformation ...
متن کاملA Transformational Methodology for Proving Termination of Logic Programs
A methodology for proving the termination of well-moded logic programs is developed by reducing the termination problem of logic programs to that of term rewriting systems. A transformation procedure is presented to derive a term rewriting system from a given well-moded logic program such that the termination of the derived rewrite system implies the termination of the logic program for all wel...
متن کاملAutomated Complexity Analysis for Prolog by Term Rewriting
For term rewrite systems (TRSs), a huge number of automated termination analysis techniques have been developed during the last decades, and by automated transformations of Prolog programs to TRSs, these techniques can also be used to prove termination of Prolog programs. Very recently, techniques for automated termination analysis of TRSs have been adapted to prove asymptotic upper bounds for ...
متن کاملVerification Tools in the Development of Provably Correct Compilers
The paper presents a practical veriication tool that helps in the development of provably correct compilers. The tool is based on the approach of proving termination of PROLOG-like programs using term-rewriting techniques and a technique of testing whether a given PROLOG program can be soundly executed on PROLOG interpreters without the Occur-check test. The tool has been built on top of the th...
متن کاملApplying Constraint Handling Rules to HPSG
Constraint Handling Rules (CHR) have provided a realistic solution to an over-arching problem in many elds that deal with constraint logic programming: how to combine recursive functions or relations with constraints while avoiding non-termination problems. This paper focuses on some other bene ts that CHR, speci cally their implementation in SICStus Prolog, have provided to computational lingu...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2007